package business.global.room.base;

import java.util.Set;

/**
 * Rooms that support a custom auto pull-up countdown before dissolving.
 */
public interface AutoPullUpCountdownRoom {

    /**
     * Performs the countdown check. Returns true if the room should be dissolved now.
     */
    boolean checkAutoPullUpCountdown();

    /**
     * Whether a countdown is currently active.
     */
    boolean isAutoPullUpCountdownActive();

    /**
     * Remaining seconds for the countdown when active.
     */
    long getAutoPullUpRemainSeconds();

    /**
     * Snapshot of players currently lacking points.
     */
    Set<Long> getAutoPullUpLackPidSnapshot();
}
